### README.md

# Проект Laravel Telegram Bot

## Обзор

Это проект на основе Laravel, направленный на развитие у детей навыков, связанных с продуктами питания. Основной функционал включает управление сущностью с параметром `food`, который уменьшается на 1 каждую минуту. Основная идея заключается в предоставлении базовой платформы, которую дети могут расширять своими функциями и требованиями. Техническая команда будет затем реализовывать эти функции на основе предоставленных спецификаций.

## Информация о проекте

- **Фреймворк**: Laravel
- **Цель**: Развитие продуктовых навыков у детей
- **Основная сущность**: Сущность с параметром `food`, инициализируемым значением 10, уменьшающимся на 1 каждую минуту
- **Среда разработки**: Создано во время декретного отпуска с четвертым ребенком :)

## Требования

- PHP ^8.3
- irazasyed/telegram-bot-sdk ^3.14
- laravel-notification-channels/telegram ^5.0
- laravel/framework ^11.0
- laravel/tinker ^2.9
- mongodb/laravel-mongodb ^4.3
- redis для управления сессиями
- MongoDB в качестве основной базы данных

## Установка

1. **Клонируйте репозиторий:**

   ```bash
   git clone https://gitverse.ru/kazachkov/petama.git
   cd petama
   ```

2. **Установите зависимости:**

   ```bash
   composer install
   npm install
   ```

3. **Скопируйте файл `.env`:**

   ```bash
   cp .env.example .env
   ```

4. **Настройте переменные окружения:**

   Обновите файл `.env` с вашими учетными данными для базы данных и другими настройками:

   ```env
   DB_CONNECTION=mongodb
   DB_HOST=127.0.0.1
   DB_PORT=27017
   DB_DATABASE=laravelbase
   DB_USERNAME=myUser
   DB_PASSWORD=myPassword

   REDIS_HOST=127.0.0.1
   REDIS_PASSWORD=null
   REDIS_PORT=6379

   TELEGRAM_BOT_TOKEN=your-telegram-bot-token
   ```

5. **Создайте ключ приложения:**

   ```bash
   php artisan key:generate
   ```

6. **Запустите миграции:**

   ```bash
   php artisan migrate
   ```

7. **Запустите локальный сервер разработки:**

   ```bash
   php artisan serve
   ```

## Использование

### Запуск бота

Чтобы запустить Telegram бота, убедитесь, что вы указали токен бота в файле `.env`. Затем вы можете запустить бота с помощью следующей команды:

```bash
php artisan bot:run
```

### Основные функции

- **Процесс метаболизма**: Параметр `food` основной сущности уменьшается на 1 каждую минуту.
- **Управление сессиями**: Использует Redis для управления сессиями.
- **Основная база данных**: MongoDB.

## Разработка

### Создание моделей и миграций

Для создания новых моделей и миграций используйте команды artisan:

```bash
php artisan make:model ModelName -m
```

### Запуск тестов

Для запуска тестов используйте следующую команду:

```bash
php artisan test
```

### Полезные команды

- **Список всех веток:**

  ```bash
  git branch -a
  ```

- **Слияние веток:**

  ```bash
  git checkout master
  git pull origin master
  git merge feature-branch
  git push origin master
  ```

## Вклад

Вы можете форкнуть этот репозиторий и внести свой вклад, отправив pull request. Пожалуйста, следуйте установленному стилю кода и включайте соответствующие тесты для ваших изменений.

## Лицензия

Этот проект лицензирован по лицензии MIT.
